мы делаем это в нашей организации в больших объемах с SQL Server. По моему мнению, пишущему в базу данных, лучше из-за возможности фильтра и поиска. Производительность мудрая ценность на 10 - 50 МБ данных и хранения его только в течение 5 дней, не влияет на Ваше приложение. Отслеживание транзакции и пользователей будет очень легко, выдерживают сравнение с отслеживанием его от текстового файла, так как можно отфильтровать транзакцией или пользователем.
Вы упоминаете что чтение файлов редко. Так, решите, стоит ли поместить время в усилие по разработке разработать платформу журналирования? Вычислите свое время, проведенное на поиск журналов от файлов журнала через год по сравнению со временем, которое потребуется, чтобы кодировать и протестировать. Если расходы времени составляют 1 час, или больше день для поиска журналов лучше вывести, входит в систему базы данных. Который может решительно уменьшить время, тратят на решение проблем.
при пребывании меньше часа тогда можно использовать некоторые текстовые средства поиска как "SRSearch", который является большим инструментом, что я использовал, поиски из нескольких файлов в папке и даю Вам результаты в маленьком snippts ("как результат поиска Google"), где Вы нажимаете для открытия файла с заинтересованным результатом. Существуют другие текстовые средства поиска, доступные также. Если среда является окнами, то у Вас есть Microsoft LogParser также хороший инструмент, доступный бесплатно, где можно запросить файл как база данных, если файл записан в определенном формате.
Если вы пытаетесь найти сумму данного свойства ( theIntegerPropertyToSum
) для каждого члена класса, производного от массива / набора, который совместим с KVC ( theSet
), вы можете сделать следующее:
NSNumber* theSum = [theSet valueForKeyPath:@"@sum.theIntegerPropertyToSum"];
Why not use plain objective C (2)?
NSInteger theSum = 0;
for (id obj in theSetOrArray)
theSum += obj.theIntegerPropertyToSum;
Disadvantage: If you like to count lines, then this looks longer. Are there other disadvantages - I wonder what happens with the KVC method with objects that don't have the required 'theIntegerPropertyToSum' property?
Advantage: I would bet that this debugs and performance tests easier. Plus when someone else reads your code in a year or two they will know what is going on here - whether they have ever seen a line of objective C or not, this looks like what is actually happening.